﻿#pragma once
#include "../../../Common/RootSignatureManager.h"

enum class RootSignatureType : int
{
    Default = 0,
};

class DX3RootSingtureManager : public RootSignatureManager
{
public:
    virtual  void BuildRootSignature(ID3D12Device* device) override;
    Microsoft::WRL::ComPtr<ID3D12RootSignature> GetRootSignature(RootSignatureType type);

private:
    void  BuildDefaultRootSignature(ID3D12Device* device);

private:
    std::unordered_map<RootSignatureType, Microsoft::WRL::ComPtr<ID3D12RootSignature>> mRootSignatures;
};
